package one.stand.service;

import one.stand.enums.LoginEnum;
import one.stand.exception.LoginException;
import one.stand.model.ResultModel;
import one.stand.request.WxLoginRequest;
import one.stand.response.LoginResponse;

import java.io.UnsupportedEncodingException;

/**
 * @author Administrator
 */
public interface HomeService {
    ResultModel<LoginResponse> loginByWeixin(WxLoginRequest request);

    /**
     * 微信pc登陆 扫码
     */
    ResultModel getPcLoginImg(String companyKey);

    /**
     * 扫码登录
     */
    ResultModel pcLoginCallBack(String code, String equCode, String state, LoginEnum loginEnum);

    /**
     * 短信验证码登录
     */
    ResultModel<LoginResponse> crmPcLoginBySms(Integer companyId, String phone, String smsCode);

    ResultModel<LoginResponse> loginIpadPwd(String username, String password, LoginEnum loginEnum);

    /**
     * 智慧展厅登录二维码
     */
    String getShowRoomLoginCode(String equCode, LoginEnum loginEnum) throws UnsupportedEncodingException;

    LoginResponse showroomLogin(String code, String equCode, LoginEnum loginEnum) throws LoginException;

    /**
     * 智慧展厅免登录
     */
    String getShowRoomNoLogin(String equCode, LoginEnum loginEnum);
}
